Jeg vil overvåke en demontering av hendelsen på NAS-en min. den har en egen side for å demontere alle USB-stasjoner. Jeg har tatt den med via iframe og vil fortsette å laste inn nettstedet til bildekilden har blitt endret til en bestemt kilde (en grønn linje som indikerer at den har demontert). Årsaken til at jeg vil fortsette å laste den, er fordi jeg kaller den via en jquery.get-funksjon fra et annet nettsted, og jeg vil at den skal vente til demonteringsprosessen er ferdig. Ville være flott hvis dette bare er mulig i vanlig javascript, men om nødvendig kan jeg også inkludere jquery. Her er hva jeg har så langt: Jeg får umiddelbart en feil om at elementet "uiView_TestPic" ikke eksisterer, selv når jeg legger til en tidsavbrudd før jeg kjører sjekken. Det inkluderte iFrame-nettstedet slutter å lastes inn så snart alle bildene lastes inn, og ikke når hele prosessen er ferdig.
2021-02-05 08:20:53
For det første må begge rammene kjøres på samme domene fordi nettlesere forhindrer at koden i en ramme får tilgang til noe i den andre rammen hvis de er forskjellige domener. Hvis de to rammene ikke er på samme domene, må iframe overvåke seg selv og varsle den andre rammen når den er ferdig med å bruke noe som windows.postMessage (). Hvis de er på samme domene, er dette litt komplisert. Du må få iframe-elementet (det er i hoveddokumentet). Du må vente på at det er klart (siden det må laste inn eget innhold). Deretter må du få dokumentet i iframe. Da kan du finne ønsket bilde i iframe. Så kan du observere innholdet. Og selvfølgelig kan du bare gjøre noe av dette hvis iframe er det samme domenet som hovedsiden din (på grunn av sikkerhetsbegrensninger). Først legger du til en id i iframe: